linux: Fix an error path in save/restore code.
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Tue, 10 Apr 2007 19:00:45 +0000 (20:00 +0100)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Tue, 10 Apr 2007 19:00:45 +0000 (20:00 +0100)
Signed-off-by: Keir Fraser <keir@xensource.com>
linux-2.6-xen-sparse/drivers/xen/core/machine_reboot.c

index aa40702eed4c01471e4e90e17bc7233fa89b4593..13f05078eb9f9d36def7a36ad4f95a39fa359a7d 100644 (file)
@@ -209,6 +209,8 @@ int __xen_suspend(int fast_suspend)
        if (fast_suspend) {
                xenbus_suspend();
                err = stop_machine_run(take_machine_down, &fast_suspend, 0);
+               if (err < 0)
+                       xenbus_suspend_cancel();
        } else {
                err = take_machine_down(&fast_suspend);
        }